<template>
  <dl>
    <dd>
      <div>
        <span class="tit">申请日：</span>
        <el-select v-model="form.ad" placeholder="请选择">
          <el-option
            v-for="item in option.ad"
            :key="item.key"
            :label="item.label"
            :value="item.key">
          </el-option>
        </el-select>
      </div>
      <div>
        <span class="tit">公开日：</span>
        <el-select v-model="form.isd" placeholder="请选择">
          <el-option
            v-for="item in option.isd"
            :key="item.key"
            :label="item.label"
            :value="item.key">
          </el-option>
        </el-select>
      </div>
    </dd>
    <dd>
      <span class="tit">专利类型：</span>
      <p class="cont">
        <span v-for="(item, index) in option.patent_type" :key="index" :class="{active: form.patent_type === item.key}" @click="handleChangeItem('patent_type', item)">{{item.key}}</span>
      </p>
    </dd>
    <dd>
      <span class="tit">法律状态：</span>
      <p class="cont">
        <span v-for="(item, index) in option.legal_status" :key="index" :class="{active: form.legal_status === item.key}" @click="handleChangeItem('legal_status', item)">{{item.key}}</span>
      </p>
    </dd>
  </dl>
</template>

<script>
export default {
  data() {
    return {
      form: {
        ad: '全部', // 申请日
        isd: '全部', // 公开日
        patent_type: '全部', // 专利类型
        legal_status: '全部', // 法律状态
      },
      option: {
        ad: [],
        isd: [],
        patent_type: [],
        legal_status: []
      },
    }
  },
  methods: {
    init(agg) {
      // 申请日
      let ad = [{key: '全部'}]
      ad = [
        ...ad,
        ...agg.ad.map(v => {
          return {
            label: moment(v.key).format('YYYY'),
            key: v.key,
            doc_count: v.doc_count
          }
        })
      ]
      this.$set(this.option, 'ad', ad)
      // 公开日
      let isd = [{key: '全部'}]
      isd = [
        ...isd,
        ...agg.isd.map(v => {
          return {
            label: moment(v.key).format('YYYY'),
            key: v.key,
            doc_count: v.doc_count
          }
        })
      ]
      this.$set(this.option, 'isd', isd)
      // 专利类型
      this.$set(this.option, 'patent_type', [{key: '全部'}, ...agg.patent_type])
      // 法律状态
      this.$set(this.option, 'legal_status', [{key: '全部'}, ...agg.legal_status])
    },
    handleChangeItem(param, item) {
      this.$set(this.form, param, item.key)
    },
    reset() {
      this.form = {
        ad: '全部', // 申请日
        isd: '全部', // 公开日
        patent_type: '全部', // 专利类型
        legal_status: '全部', // 法律状态
      }
    }
  },
  watch: {
    form: {
      handler(newVal, oldVal) {
        this.$emit('getParams', this.form)
      },
      deep: true
    }
  },
  mounted() {
  }
}
</script>

<style lang="scss" scoped>
.tit {
  width: 80px !important;
}
.cont {
  width: calc(100% - 80px) !important;
}
</style>